23 research outputs found
Mechanistic Behavior of Single-Pass Instruction Sequences
Earlier work on program and thread algebra detailed the functional,
observable behavior of programs under execution. In this article we add the
modeling of unobservable, mechanistic processing, in particular processing due
to jump instructions. We model mechanistic processing preceding some further
behavior as a delay of that behavior; we borrow a unary delay operator from
discrete time process algebra. We define a mechanistic improvement ordering on
threads and observe that some threads do not have an optimal implementation.Comment: 12 page
Tuplix Calculus
We introduce a calculus for tuplices, which are expressions that generalize
matrices and vectors. Tuplices have an underlying data type for quantities that
are taken from a zero-totalized field. We start with the core tuplix calculus
CTC for entries and tests, which are combined using conjunctive composition. We
define a standard model and prove that CTC is relatively complete with respect
to it. The core calculus is extended with operators for choice, information
hiding, scalar multiplication, clearing and encapsulation. We provide two
examples of applications; one on incremental financial budgeting, and one on
modular financial budget design.Comment: 22 page
Branching time and orthogonal bisimulation equivalence
We propose a refinement of branching bisimulation equivalence that we call orthogonal bisimulation equivalence. Typically, internal activity (the performance of τ-steps) may be compressed,
but not completely discarded. Hence, a process with τ-steps cannot be equivalent to one without τ-steps. Also, we present a modal characterization of orthogonal bisimulation equivalence. This equivalence is a congruence for ACP extended with abstraction and priority operators. We provide a complete axiomatization, and describe some expressiveness results. Finally, we present the verification of a PAR protocol that is specified with use of priorities